import QtQuick 2.15
import QtQuick.Controls 2.15
import QtQuick.Layouts 1.15
//import QtQuick.Controls 1.2 as OldControl
//import mytablemodel 1.0
import Qt.labs.qmlmodels 1.0

MainView {
    id: root
    //property bool isLoaded:false
    property string tableName: "weightTable"
    property int verHeaderHeight: 30
    property int verHeaderWidth: 0
    property int horHeaderHeight: 30
    property variant columnWidthArr: [205,185,110,300]
    property string m_startTime:Qt.formatDateTime(new Date(), "yyyy-MM-dd 00:00:00")
    property string m_endTime:Qt.formatDateTime(new Date(), "yyyy-MM-dd 23:59:59")
    property int m_currentPage:0
//    property int m_startYear : new Date().getFullYear();
//    property int m_startMonth: new Date().getMonth()+1;
//    property int m_startDay: new Date().getDate();
    //property string strStartTime:""
    //property string strEndTime:""

    //m_startYear.toString()+"-"+m_startMonth.toString().padStart(2, '0')+"-"+m_startDay.toString()+" 23:59:59"
    property int btnWidth:30
    property int btnHeight:50
    signal signalRefresh
    property int dateType:0
    //property int currentPage: 0
    property int totalPage:1
    width: 800
    height: 391//

//    onVisibleChanged: {
//        if(visible){
//            //signalRefresh();
//            tableView.forceLayout();
//        }
//    }
    //qsTr("日期"), qsTr("重量"),qsTr("经度"), qsTr("纬度")
    function getTitle(index)
    {
        switch(index)
        {
            case 0:
                return qsTr("日期")
            case 1:
                return qsTr("重量")
            case 2:
                return qsTr("模式")
            case 3:
                return qsTr("状态")
//            case 4:
//                return qsTr("高度")
        }
    }
//    function onWeightDatasChanged()
//    {
//        tableView.forceLayout()
//    }
Component.onCompleted:
{
    //mymodbus.weightDatasChanged.connect(onWeightDatasChanged)
    signalRefresh();
    myTableModel.rows = Qt.binding(function() { return mymodbus.weightDatas })
}
Dialog {
    anchors.centerIn: parent
    id: exportOKDialog
    //title: "提示"
    standardButtons: Dialog.Ok
    modal: true
    closePolicy: "CloseOnEscape"
//        onAccepted: {

//        }
    z:100
    //onRejected: console.log("Cancel clicked")
}

function exportData()
{
    var result = mymodbus.exportToCsv(m_startTime, m_endTime)
    if(result)
    {
        exportOKDialog.title=qsTr("导出成功!")
        exportOKDialog.accepted.connect(function() {
            exportOKDialog.close()

        })
    }
    else
    {
        exportOKDialog.title=qsTr("导出失败，请检查是否接入U盘!")
        exportOKDialog.accepted.connect(function() {
            exportOKDialog.close()
        })
    }
    loaderText.visible =false
    exportOKDialog.open()
}
//    Dialog {
//        id: dateDialog
//        anchors.centerIn: parent
//        modal: Qt.WindowModal
//        title: dateType==0?qsTr("开始日期"):qsTr("结束日期")
//        standardButtons: Dialog.Ok
//        //onButtonClicked: console.log("clicked button " + clickedButton)
//        onAccepted: {
//            var date0=calendar.selectedDate
//            if(dateType==0){
//                startDate.text=Qt.formatDateTime(date0, "yyyy-MM-dd")
//            }
//            else{
//                endDate.text=Qt.formatDateTime(date0, "yyyy-MM-dd")
//            }
//        }
////        OldControl.Calendar {
////            id: calendar
////            width: parent ? parent.width : implicitWidth
////            onDoubleClicked: dateDialog.accept()
////            locale: mytables.language===0?Qt.locale("zh_CN"):Qt.locale("en_US")
////        }
//    }
    DateTimeDialog{
            id: dlg
            text: dateType==0?qsTr("开始日期"):qsTr("结束日期")
            //type: "Date"
            onAccepted: {
//                console.log(getText("yyyy-MM-dd hh:mm:ss"));
//                console.log(getText("yyyy-MM-dd"));
//                console.log(getText("hh:mm:ss"));
                if(dateType==0){
                    startDate.text=getText("yyyy-MM-dd hh:mm:ss")
                }
                else{
                    endDate.text=getText("yyyy-MM-dd hh:mm:ss")
                }
                if (typeof rectangle !== 'undefined' && typeof rectangle.resetScreenSaverTimer === 'function') {
                    rectangle.resetScreenSaverTimer();
                }
            }
            onRejected: {
                // 取消时也复位屏幕保护定时器
                if (typeof rectangle !== 'undefined' && typeof rectangle.resetScreenSaverTimer === 'function') {
                    rectangle.resetScreenSaverTimer();
                }
            }
        }
//function getYearsData()
//{
//    var years=[];
//    for(var i=2020; i<2081; i++)
//    {
//        years.push(i);
//    }
//    return years;
//}
//function isRunNian(year)
//{
//    var result=false;
//    if (year % 100 == 0)
//        {
//            if (year % 400 == 0)
//            {
//                result = true;
//            }
//        }
//        else if (year % 4 == 0)
//        {
//            result = true;
//        }
//    return result;
//}
//function getDayData(year,month)
//{
//   var data=[];
//switch(month)
//{

//case 1:
//case 3:
//case 5:
//case 7:
//case 8:
//case 10:
//case 12:
//    for(var i=1;i<=31;i++){
//        data.push(i);
//    }
//    break;
//case 2:
//    if(isRunNian(year))
//    {
//        for(let i=1;i<=29;i++){
//            data.push(i);
//        }
//    }
//    else{
//        for(let i=1;i<=28;i++){
//            data.push(i);
//        }
//    }
//    break;
//case 4:
//case 6:
//case 9:
//case 11:
//    for(let i=1;i<=30;i++){
//        data.push(i);
//    }
//    break;
//}

//return data;
//}
Rectangle
   {
       width:800
       height: 50
       color:"transparent"
       GridLayout{ //root中放置一个行布局，布局中放置3个方块
           id: zeroCalibrationLayout
           anchors.fill: parent
           //columnSpacing: 20 //间距
           rows: 1//行数
           columns: 5 //列数
               Button
               {
                   id:startDate
                   // x: 104
                   // y: 0
                   Layout.row:0
                   Layout.column:0
                   Layout.preferredWidth: 210
                   Layout.preferredHeight: btnHeight
                   font.pixelSize: 15
                   text:m_startTime//.slice(0,10)
                       //Qt.formatDateTime(new Date(), "yyyy-MM-dd")
                   background:
                       Rectangle{
                       border.width: 0
                       color: "#7584C2"
                           //startDate.down?"#388C8C":
                           }
                   onClicked: {
//                       dataLoader.running=true
//                       dataLoader.visible=true;
                       //dataLoader.
                       dateType=0
                       //var locale = Qt.locale()
                       //var date1 = Date.fromLocaleString(locale, startDate.text, "yyyy-MM-dd");
                       //calendar.selectedDate=date1
                       //dateDialog.open()
                        if (typeof rectangle !== 'undefined' && typeof rectangle.stopScreenSaverTimer === 'function') {
                            rectangle.stopScreenSaverTimer();
                        } 
                       dlg.open()
                       dlg.exec(startDate.text)
                       //dlg.exec(Qt.formatDateTime(new Date(), "yyyy-MM-dd"))
                       //dataLoader.visible=false;
                       //dataLoader.running=false
                   }
                   palette.buttonText: "white"
               }
                   Text
                   {
                       // x: 325
                       // y: 0
                       Layout.row:0
                       Layout.column:1
                       Layout.preferredWidth: btnWidth
                       Layout.preferredHeight: btnHeight
                       text:qsTr("至")
                       font.pixelSize: 25
                       color: "white"
                       verticalAlignment: Text.AlignVCenter
                   }
                   Button
                   {
                       id:endDate
                       // x: 104
                       // y: 0
                       Layout.row:0
                       Layout.column:2
                       Layout.preferredWidth: 210
                       Layout.preferredHeight: btnHeight
                       font.pixelSize: 15
                       text:m_endTime//.slice(0,10)
                           //Qt.formatDateTime(new Date(), "yyyy-MM-dd")
                       background:
                           Rectangle{
                           border.width: 0
                           color: "#7584C2"
                               }
                       palette.buttonText: "white"
                       onClicked: {
                           dateType=1
//                           var locale = Qt.locale()
//                           var date1 = Date.fromLocaleString(locale, endDate.text, "yyyy-MM-dd");
//                           calendar.selectedDate=date1
//                           dateDialog.open()
                            if (typeof rectangle !== 'undefined' && typeof rectangle.stopScreenSaverTimer === 'function') {
                                rectangle.stopScreenSaverTimer();
                            }
                           dlg.open()
                           dlg.exec(endDate.text)
                           //dlg.exec(Qt.formatDateTime(new Date(), "yyyy-MM-dd"))
                       }
                   }
                   Button
                   {
                       id:btnQuery
                       // x: 700
                       // y: 0
                       // width: 95
                       // height: 45
                       Layout.row:0
                       Layout.column:3
                       Layout.preferredWidth: 120
                       Layout.preferredHeight: 45
                       background: Rectangle{
                           border.width: 0
                           color: "#C070B0"
                               }
                       palette.buttonText: "white"
                       text: qsTr("查询")
                       font.pixelSize: 25
                       onClicked: {
                           if(dataLoader.visible){
                               return
                           }
                           if(loaderText.visible)
                           {
                               return;
                           }
                           dataLoader.visible = true
                           dataTimmer.start()
                           m_startTime=startDate.text//+" 00:00:00"
                           mymodbus.setStartTime(m_startTime);
                           m_endTime=endDate.text//+" 23:59:59"
                           mymodbus.setEndTime(m_endTime);
                           m_currentPage = 0
                           mymodbus.setCurrentPage(m_currentPage);
                           //MyTableModel.slotParaChanged(m_startTime,m_endTime,m_currentPage)
                           totalPage = mymodbus.totalCount(m_startTime,m_endTime)
                           pageNum.text=(m_currentPage+1)+"/"+(totalPage)
                           //tableView.forceLayout()
//                           tableView.connect(function(){
//                               dataLoader.visible = false
//                           })
                   }
               }
                   Button
                   {
                       id:btnExport
                       // x: 700
                       // y: 0
                       // width: 95
                       // height: 45
                       Layout.row:0
                       Layout.column:4
                       Layout.preferredWidth: 120
                       Layout.preferredHeight: 45
                       background: Rectangle{
                           border.width: 0
                           color: "#C070B0"
                               }
                       palette.buttonText: "white"
                       text: qsTr("导出")
                       font.pixelSize: 25
                       onClicked: {
                           if(dataLoader.visible){
                               return
                           }
                           if(loaderText.visible)
                           {
                               return;
                           }
                           loaderText.visible=true;
                           funcTimer.start();

                   }
               }


       }
//        GridLayout{ //root中放置一个行布局，布局中放置3个方块
//            id: zeroCalibrationLayout
//            anchors.fill: parent
//            //columnSpacing: 20 //间距
//            rows: 1//行数
//            columns: 14 //列数
// MyComboBox
//     {
//         id: startYear
//         //x: 0
//         //y: 0
//         font.pixelSize: 15
//         //width: 100
//         model: getYearsData();
//         Layout.row:0
//         Layout.column:1
//         Layout.preferredWidth: 100
//         Layout.preferredHeight: btnHeight
//         currentIndex:m_startYear-2020
//     }

//     Button
//     {
//         // x: 104
//         // y: 0
//         Layout.row:0
//         Layout.column:0
//         Layout.preferredWidth: btnWidth
//         Layout.preferredHeight: btnHeight
//         background:
//             Rectangle{
//             border.width: 0
//             color: "#7584C2"
//                 }

//         text: qsTr("年")
//         font.pixelSize: 25
//         palette.buttonText: "white"
//         onClicked: {
//                     startYear.popup.open()
//                 }
//     }
//     MyComboBox
//     {
//         // width:60
//         id: startMonth
//         // x: 138
//         // y: 0
//         font.pixelSize: 15
//         Layout.row:0
//         Layout.column:3
//         Layout.preferredWidth: 60
//         Layout.preferredHeight: btnHeight
//         model: [1,2,3,4,5,6,7,8,9,10,11,12];
//         //popup.contentItem.implicitHeight : 260
//         onCurrentIndexChanged: {
//                     startDay.model=   getDayData(startYear.currentValue,startMonth.currentIndex+1)
//                    }
//         currentIndex:m_startMonth-1
//     }
//     Button
//     {
//         // x: 104
//         // y: 0
//         Layout.row:0
//         Layout.column:2
//         Layout.preferredWidth: btnWidth
//         Layout.preferredHeight: btnHeight
//         background:
//             Rectangle{
//             border.width: 0
//             color: "#7584C2"
//                 }

//         text: qsTr("月")
//         font.pixelSize: 25
//         palette.buttonText: "white"
//         onClicked: {
//                     startMonth.popup.open()
//                 }
//     }
//     MyComboBox
//     {
//         id: startDay
//         // width: 60
//         // x: 236
//         // y: 0
//         Layout.row:0
//         Layout.column:5
//         Layout.preferredWidth: 60
//         Layout.preferredHeight: btnHeight
//         font.pixelSize: 15

//         model: [1,2,3,4,5,6,7,8,9,10,11,12];
//         popup.contentItem.implicitHeight : 260
//         currentIndex:m_startDay-1
//     }

//     Button
//     {
//         // x: 104
//         // y: 0
//         Layout.row:0
//         Layout.column:4
//         Layout.preferredWidth: btnWidth
//         Layout.preferredHeight: btnHeight
//         background:
//             Rectangle{
//             border.width: 0
//             color: "#7584C2"
//                 }

//         text: qsTr("日")
//         font.pixelSize: 25
//         palette.buttonText: "white"
//         onClicked: {
//                     startDay.popup.open()
//                 }
//     }
//     Text
//     {
//         // x: 325
//         // y: 0
//         Layout.row:0
//         Layout.column:6
//         Layout.preferredWidth: btnWidth
//         Layout.preferredHeight: btnHeight
//         text:qsTr("至")
//         font.pixelSize: 25
//         color: "white"
//         verticalAlignment: Text.AlignVCenter
//     }
//     MyComboBox
//     {
//         id: endYear
//         x: 359
//         y: 0
//         Layout.row:0
//         Layout.column:8
//         Layout.preferredWidth: 100
//         Layout.preferredHeight: btnHeight
//         width: 100
//         font.pixelSize: 15

//         model: getYearsData()
//         //popup.contentItem.implicitHeight : 260
//         currentIndex: m_startYear-2020
//     }

//     Button
//     {
//         // x: 104
//         // y: 0
//         Layout.row:0
//         Layout.column:7
//         Layout.preferredWidth: btnWidth
//         Layout.preferredHeight: btnHeight
//         background:
//             Rectangle{
//             border.width: 0
//             color: "#7584C2"
//                 }

//         text: qsTr("年")
//         font.pixelSize: 25
//         palette.buttonText: "white"
//         onClicked: {
//                     endYear.popup.open()
//                 }
//     }
//     MyComboBox
//     {
//         //width:60
//         id: endMonth
//         //x: 504
//         //y: 0
//         font.pixelSize: 15
//         Layout.row:0
//         Layout.column:10
//         Layout.preferredWidth: 60
//         Layout.preferredHeight:btnHeight
//         model: [1,2,3,4,5,6,7,8,9,10,11,12];
//         popup.contentItem.implicitHeight : 260
//     onCurrentIndexChanged: {
//                    endDay.model= getDayData(endYear.currentValue,endMonth.currentIndex+1)
//                }
//         currentIndex:m_startMonth-1
//     }
//     Button
//     {
//         // x: 104
//         // y: 0
//         Layout.row:0
//         Layout.column:9
//         Layout.preferredWidth: btnWidth
//         Layout.preferredHeight: btnHeight
//         background:
//             Rectangle{
//             border.width: 0
//             color: "#7584C2"
//                 }

//         text: qsTr("月")
//         font.pixelSize: 25
//         palette.buttonText: "white"
//         onClicked: {
//                     endMonth.popup.open()
//                 }
//     }
//     MyComboBox
//     {
//         id: endDay
//         //width: 60
//         //x: 608
//         //y: 0
//         font.pixelSize: 15
//         Layout.row:0
//         Layout.column:12
//         Layout.preferredWidth: 60
//         Layout.preferredHeight:btnHeight
//         model: [1,2,3,4,5,6,7,8,9,10,11,12];
//         popup.contentItem.implicitHeight : 260
//         currentIndex: m_startDay-1
//     }
//     Button
//     {
//         // x: 104
//         // y: 0
//         Layout.row:0
//         Layout.column:11
//         Layout.preferredWidth: btnWidth
//         Layout.preferredHeight: btnHeight
//         background:
//             Rectangle{
//             border.width: 0
//             color: "#7584C2"
//                 }

//         text: qsTr("日")
//         font.pixelSize: 25
//         palette.buttonText: "white"
//         onClicked: {
//                     endDay.popup.open()
//                 }
//     }
//     Button
//     {
//         id:btnQuery
//         // x: 700
//         // y: 0
//         // width: 95
//         // height: 45
//         Layout.row:0
//         Layout.column:13
//         //Layout.preferredWidth: 95
//         Layout.preferredHeight: 45
//         background: Rectangle{
//             border.width: 0
//             color: "#C070B0"
//                 }

//         text: qsTr("查询")
//         font.pixelSize: 25
//         palette.buttonText: "white"
//         onClicked: {
//             //startTime=startYear.currentText+"-"+startMonth.currentText+"-"+startDay.currentText+" 00:00:00";
//             //endTime=endYear.currentText+"-"+endMonth.currentText+"-"+endDay.currentText+" 23:59:59"
//            /* MyTableModel.slotTimeChanged(startYear.currentText+"-"+startMonth.currentText+"-"+startDay.currentText+" 00:00:00",
//                                     endYear.currentText+"-"+endMonth.currentText+"-"+endDay.currentText+" 23:59:59")*/
// //            tableView.forceLayout()
//             //MyTableModel.startTimeChanged(startYear.currentText+"-"+startMonth.currentText+"-"+startDay.currentText+" 00:00:00");
//             //MyTableModel.endTimeChanged(endYear.currentText+"-"+endMonth.currentText+"-"+endDay.currentText+" 23:59:59")
//             //tableView.forceLayout()
//             //.setStartTime(startYear.currentText+"-"+startMonth.currentText+"-"+startDay.currentText+" 00:00:00");
// m_startTime= startYear.currentText+"-"+startMonth.currentText+"-"+startDay.currentText+" 00:00:00"
// m_endTime=endYear.currentText+"-"+endMonth.currentText+"-"+endDay.currentText+" 23:59:59"
// //           /* {;
// //                endTime: endYear.currentText+"-"+endMonth.currentText+"-"+endDay.currentText+" 23:59:59"}*/
//         }
//     }
// }


   }
    TableView {
        id: tableView
        anchors.leftMargin: -1
        anchors.rightMargin: 1
        anchors.topMargin: 50+root.horHeaderHeight
        anchors.bottomMargin: 43
            columnSpacing: 1
            columnWidthProvider: function (column) {
                return root.columnWidthArr[column];
            }
            rowHeightProvider: function (row) {
                return root.verHeaderHeight;
            }
            Layout.margins: 0
            anchors{
                fill: parent
            }
            model: TableModel
                   {
                       id:myTableModel
                       TableModelColumn { display: "createdTime" }
                       TableModelColumn { display: "strWeight" }
                       TableModelColumn { display: "strScheduled" }
                       TableModelColumn { display: "strMode" }

                       rows:{}
                   }
            //clip: true
            delegate: Rectangle {
                color:"#0A3653"
                width: tableView.columnWidthProvider(model.row)
                height: horHeaderHeight
                anchors.margins: -1
                border.color:"white"
                Label {
                    id: label
                    text: display
                    anchors.fill: parent
                    anchors.margins: 0
                    color: "white"
                    font.pixelSize: 20
                    verticalAlignment: Text.AlignVCenter
                    horizontalAlignment: Text.AlignHCenter
                }
            }
        }
        //定义横向表头
    Item{
        id: header_horizontal
        anchors{
            left: parent.left
            right: parent.right
            leftMargin: root.verHeaderWidth
            top: parent.top
            topMargin: 50
        }
        height: root.horHeaderHeight
        z: 2

        Row {
            id: header_horizontal_row
            anchors.fill: parent
            leftPadding: -tableView.contentX
            clip: true
            spacing: 0

            Repeater {
                model: [qsTr("日期"), qsTr("重量"), qsTr("模式"), qsTr("状态")]
                    //tableView.columns > 0 ? tableView.columns : 0

                Rectangle {
                    id: header_horizontal_item
                    width: tableView.columnWidthProvider(index)+tableView.columnSpacing
                    height: root.horHeaderHeight
                    color: "#0A3653"
                    border.color:"white"

                    Text {
                        anchors.centerIn: parent
                        text: getTitle(index)
                            //index===0?qsTr("日期"):qsTr("重量")
                            //tableView.model.headerData(index, Qt.Horizontal)
                        color: "white"
                    }
                    Rectangle{
                        width: 1
                        height: parent.height
                        anchors.right: parent.right
                        color: "black"
                        opacity: 0.5
                    }
                }
            }
        }
    }
    Timer{
        id:dataTimmer
        interval: 600
        running: false
        repeat: false
        onTriggered: {dataLoader.visible = false}
    }
    Timer {
        id:funcTimer
                running: false
                repeat: false
                interval:100
                onTriggered: {
                    exportData()
                }
            }

    MyBuzyIndicator{
        anchors.centerIn: parent
        id: dataLoader
        visible:false
        //anchors.verticalCenterOffset: 3
        //anchors.horizontalCenterOffset: 22
    }
    Rectangle{
        x: -1
        y: 330
        height:45
        width: 800
        color:"transparent"

        Row {
            anchors.centerIn: parent
            spacing: 10
            Button {
                id: btnFirstPage
                height: 40
                width: 123
                text: qsTr("首页")
                font.pixelSize: 25
                palette.buttonText: "white"
                onClicked: {
                    if(dataLoader.visible){
                        return
                    }
                    if(loaderText.visible)
                    {
                        return;
                    }
                    dataLoader.visible = true
                    dataTimmer.start()
                    m_startTime=startDate.text//+" 00:00:00"
                    mymodbus.setStartTime(m_startTime)
                    m_endTime=endDate.text//+" 23:59:59"
                    mymodbus.setEndTime(m_endTime)
                    m_currentPage = 0
                    mymodbus.setCurrentPage(m_currentPage);
                    pageNum.text=(m_currentPage+1)+"/"+(totalPage)
                    //tableView.forceLayout()
                }
                background: Rectangle {
                    color: "#7584c2"
                    border.width: 0
                }
            }
            Button {
                id: btnPrePage
                height: 40
                width: 123
                text: qsTr("上一页")
                font.pixelSize: 25
                palette.buttonText: "white"
                onClicked: {
                    if(dataLoader.visible){
                        return
                    }
                    if(loaderText.visible)
                    {
                        return;
                    }
                    dataLoader.visible = true
                    dataTimmer.start()
                    m_startTime=startDate.text//+" 00:00:00"
                    mymodbus.setStartTime(m_startTime)
                    m_endTime=endDate.text//+" 23:59:59"
                    mymodbus.setEndTime(m_endTime)
                    if(m_currentPage > 0)
                    {
                        m_currentPage = m_currentPage - 1;
                        mymodbus.setCurrentPage(m_currentPage);
                    }
                    pageNum.text=(m_currentPage+1)+"/"+(totalPage)
                    //tableView.forceLayout()
                }
                background: Rectangle {
                    color: "#7584c2"
                    border.width: 0
                }
            }
            Text{
                id:pageNum
                font.pixelSize: 38
                height:40
                color:"White"
                text:(m_currentPage+1)+"/"+(totalPage)
            }

            Button {
                id: btnNextPage
                height: 40
                width: 123
                text: qsTr("下一页")
                font.pixelSize: 25
                palette.buttonText: "white"
                onClicked: {
                    if(dataLoader.visible){
                        return
                    }
                    if(loaderText.visible)
                    {
                        return;
                    }
                    dataLoader.visible = true
                    dataTimmer.start()
                    m_startTime=startDate.text//+" 00:00:00"
                    mymodbus.setStartTime(m_startTime)
                    m_endTime=endDate.text//+" 23:59:59"
                    mymodbus.setEndTime(m_endTime)
                    if(m_currentPage<totalPage-1)
                    {
                        m_currentPage = m_currentPage + 1;
                        mymodbus.setCurrentPage(m_currentPage);
                    }
                    //tablemodel.slotParaChanged(m_startTime,m_endTime,m_currentPage)
                    pageNum.text=(m_currentPage+1)+"/"+(totalPage)
                    //tableView.forceLayout()
                }
                background: Rectangle {
                    color: "#7584c2"
                    border.width: 0
                }
            }
            Button {
                id: btnLastPage
                height: 40
                width: 123
                text: qsTr("尾页")
                font.pixelSize: 25
                palette.buttonText: "white"
                onClicked: {
                    if(dataLoader.visible){
                        return
                    }
                    if(loaderText.visible)
                    {
                        return;
                    }
                    dataLoader.visible = true
                    dataTimmer.start()
                    m_startTime=startDate.text//+" 00:00:00"
                    mymodbus.setStartTime(m_startTime)
                    m_endTime=endDate.text//+" 23:59:59"
                    mymodbus.setEndTime(m_endTime)
                    m_currentPage = totalPage-1;
                    mymodbus.setCurrentPage(m_currentPage);
                    pageNum.text=(m_currentPage+1)+"/"+(totalPage)
                    //tableView.forceLayout()
                }
                background: Rectangle {
                    color: "#7584c2"
                    border.width: 0
                }
            }
        }

    }
    onSignalRefresh: {
        //MyTableModel.slotTimeChanged(m_startTime,m_endTime)
        //dataLoader.visible = true
        //dataTimmer.start()
        //m_currentPage = 1
        //m_currentPage = 0
        mymodbus.setStartTime(m_startTime);
        mymodbus.setEndTime(m_endTime);
        //mymodbus.setCurrentPage(-1);
        mymodbus.setCurrentPage(m_currentPage);
        totalPage = mymodbus.totalCount(m_startTime,m_endTime)
        pageNum.text=(m_currentPage+1).toString()+"/"+(totalPage).toString()
        //tableView.forceLayout()
        //btnQuery.clicked()

    }
}

